package integer;

/**
 * JDK5之后推出了一个新特性：自动拆装箱
 * 编译器在遇到基本类型和引用类型互相直接复制的情况时会自动补充代码完成他们之间
 * 的转换因此该特性是编译器认可的，字节码文件中并不存在互相直接赋值的情况。
 */
public class IntegerDemo2 {
    public static void main(String[] args) {
        int i = 123;

        /*
            触发了自动装箱特性，编译器会将代码改为下面的样子并放入.class
            Integer in = Integer.valueOf(i)
         */
        Integer in = i;
        /*
            自动拆箱，编译器会将代码改为：
            int num = in.intValue();
         */
        int num = in;

    }
}
